안드로이드 앱 개발 Kotlin - 간단한 기본 문법 3. kotlin 언어에서는 구문식뿐만아니라 표현식으로도 함수를 작성할 수 있다. 1. val은 상수에 대한 선언 --> 값을 정하면 변경할 수 없음 2. var은 변수에 대한 선언 --> 값을 정해도 변경할 수 있음 val 변수명: 변수타입 = 값 4. kotlin은 타입추론이 가능하기 때문에 b,c처럼 타입 선언없이 선언할수도 있음 val 변수명 = 값 --> null_safe : jav... 안드로이드 스튜디오안드로이드 앱 개발kotlinkotlin 앱 프로젝트 - 1 프로젝트 주제 다이어트나 운동을 보조하기 위한 자기 관리 앱 기획안 [기획안 개요] 1) 프로젝트 이름/간단 설명 다이어터 식단 관리, 운동 방법 및 유명인들의 다이어트 방법 소개, 캘린더를 활용한 운동 스케쥴짜기 등등 --> 운동과 관련된 자기관리를 보조하는 앱 2) 프로젝트 생김새(레이아웃) --> 이미지의 'copy of 운동법' 부분은 운동일정에 관련된 부분입니다. 3) 개발해야 하는... 과제안드로이드 앱 개발리액트 네이티브과제 앱 페이지 적용 - 1 , 네비게이터란? 앱에 여러 페이지를 만들었다면 그 페이지를 이동할 수 있는 기능을 의미한다. --> React Navigation이라는 도구 사용할 것 (Expo측에서 개발한) [React Navigation 설치 가이드] --> yarn을 통해 설치 --> 기본 설치 코드 (네비게이터 활용을 위한) yarn add @react-navigation/native expo install react-native-... 안드로이드 앱 개발리액트 네이티브리액트 네이티브 레이아웃 xml 파일에서 xmlns 코드의 의미는? ( xml에서의 import 기능 ) 아래와 같이 레이아웃을 나타내는 xml 파일이 있다고 할때, 이 부분은 무엇을 나타낼까? 이 본론부터 말하자면 이 부분은 xml에서의 import 기능이라고 보면 된다. 즉, 해당 위치에 있는 라이브러리를 각각 임의의 변수에 담아서 사용하겠다는 의미이다. 예를 들어, 우리가 위와 같이 TextView의 id 속성을 지정할 수 있는 것도, 뜯어보면 "android"라는 변수에 " " 위치에 있... 안드로이드 스튜디오kotlin안드로이드 앱 개발kotlin JSX 기본 문법 리액트 네이티브라는 개발도구 위에 Expo를 올려서 손쉽게 코딩하는 형태 --> 기반은 리액트 네이티브이므로 모든 태그는 리액트 네이티브(도구상자)로 부터 불러옴 JSX 문법 --> <> 형태로 된 태그문법로 이루어짐 [Expo로 앱 생성시 초기 화면] --> App() 함수는 View태그를 반환(반환된 View로 화면을 그려주는 것) -->화면에 반환된 View 태그의 내용이 나타남 -->... JSXJavaScript리액트 네이티브안드로이드 앱 개발JSX {}표현식, 조건문 예시 ) 코드의 일부분 let todayWeather = 10 + 17; let todayCondition = "흐림" return ( return 구문 안에서는 {슬래시 + 방식으로 주석 <Text>오늘의 날씨: {자바스크립트처럼 + 연산}</Text> 사용 <Text>나 <ScrollView> 등의 태그에 style을 입히기 위해서도 {} 사용 --> styles.container등 st... JSXJavaScript리액트 네이티브안드로이드 앱 개발JSX 리액트 네이티브 - Expo 여러 앱기능 - 앱에서 외부링크 열기 앱에서 외부링크를 열기 위한 준비 expo에서 제공하는 도구 설치 expo install expo-linking 설치한 도구에서 불러오기 --> expo-linking안의 도구를 모두 가져온는데 그 이름을 Linking이라고 명명짓겠다는 의미 도구를 이용하여 함수 만들기 Linking.openURL(" ) 만든 함수를 활용... JSX리액트 네이티브안드로이드 앱 개발JSX 앱 프로젝트 - 02 - 3 (로또 번호 추첨기) - NumberPicker, ContextCompat을 통해 drawable에 접근하기, lazy init, 리스너설정에 대한 방법론 --> Shape Drawable에 대한 자세한 설명은 02 - 1 글에 있음 와 같이 범위를 선택할 수 있다. ( 위 코드처럼 설정할 경우 1~45사이의 숫자를 선택할 수 있다. 앱 실행시에 visibility속성를 gone으로 하고 싶은 경우, 이렇게만 하면 안드로이드 스튜디오내에서도 gone으로 적용되기 때문에 해당 컴포넌트가 보이지 않는다. 안드로이드 스튜디오에서는 visible로 적... 안드로이드 앱 개발앱 프로젝트kotlin안드로이드 스튜디오kotlin 앱 프로젝트 - 03 - 1 (비밀 다이어리) - SharedPreference, Thread(UI Thread와 새로운 쓰래드) 그리고 Handler, Theme(테마)설정하기, AlertDialog, Custom Font 사용하는 법, 기본 컴포넌트(Button, TextView 등등) 색 변경하기 ,,,,,, 글 입력이 멈춘 후 0.5초가 지나면 저장되는 코드 SharedPreference라는 기능은 Preference파일을 사용하고, 다른 앱에서도 해당 파일을 사용할 수 있게 Share해주는 기능이다. 위의 설명처럼 SharedPreference는 Preference파일을 다른 앱에서도 사용(Share)할 수 있게 해주는 기능이기 때문에 password라는 Preference파일을 이 앱에서만 사용하기 위해서 Mode를 Private로 설정하였다... 안드로이드 앱 개발앱 프로젝트kotlin안드로이드 스튜디오kotlin 리액트 네이티브 & Expo + Node.js,NPM 란 리액트 --> 웹화면을 만드는 프론트 기술 리액트 네이티브 --> 리액트 + 네이티브 --> 리액트 기술을 응용하여 앱을 만드는 기술 But 리액트 네이티브만으로 개발하다보면 JavaScript뿐만 아니라 안드로이드 코드, ios 코드가 필요하게 됨 --> 이는 JavaScript만으로 개발하고자 하는 취지에 벗어난 것 Node.js --> 자바스크립트 개발환경 구축 NPM --> 자바스크립... JavaScript리액트 네이티브안드로이드 앱 개발JavaScript 앱으로 수익을 내는 방법 - 배너광고 ... 2. 전면 배너 전면 배너 예제 코드 전면 배너의 경우, 사용 설명서에 따르면 초기화가 필요하므로 useEffect에서 초기화 (AdMob 광고키 셋팅, 리스너 설정) 특히 리스너 중에 의 경우 광고가 끝나면서 본래 나타나야 될 파일로 이동하는 부분으므로 좀더 신경써서 봐야한다. 이후 --> goDetail 함수를 만들고 광고 시작 코드를 넣어 광고를 시작한다. (이외에는 위의 전체 코드 살펴볼 것)... 리액트 네이티브안드로이드 앱 개발리액트 네이티브 앱 프로젝트 - 10 - 1 (오늘의 명언) - Firebase Remote Config( 원격 구성 ), ViewPager2 무한 스와이프 할 수 있다. 애니메이션 같은 부분들을 좀 더 원할하게 보여줄 수 있음 사용자가 ViewPager2를 스와이프할 때 ViewHolder의 메소드를 실행시키는 클래스라고 볼 수 있다. 여기서 ViewHolder() 메소드의 파라미터로 ViewPager2를 구성할 레이아웃을 전달해야 한다. 이 때 bind() 메소드는 파라미터로 변경될 데이터를 받아야 한다. 따라서 일반적인 경우 ... 안드로이드 앱 개발kotlin안드로이드 스튜디오앱 프로젝트kotlin
Kotlin - 간단한 기본 문법 3. kotlin 언어에서는 구문식뿐만아니라 표현식으로도 함수를 작성할 수 있다. 1. val은 상수에 대한 선언 --> 값을 정하면 변경할 수 없음 2. var은 변수에 대한 선언 --> 값을 정해도 변경할 수 있음 val 변수명: 변수타입 = 값 4. kotlin은 타입추론이 가능하기 때문에 b,c처럼 타입 선언없이 선언할수도 있음 val 변수명 = 값 --> null_safe : jav... 안드로이드 스튜디오안드로이드 앱 개발kotlinkotlin 앱 프로젝트 - 1 프로젝트 주제 다이어트나 운동을 보조하기 위한 자기 관리 앱 기획안 [기획안 개요] 1) 프로젝트 이름/간단 설명 다이어터 식단 관리, 운동 방법 및 유명인들의 다이어트 방법 소개, 캘린더를 활용한 운동 스케쥴짜기 등등 --> 운동과 관련된 자기관리를 보조하는 앱 2) 프로젝트 생김새(레이아웃) --> 이미지의 'copy of 운동법' 부분은 운동일정에 관련된 부분입니다. 3) 개발해야 하는... 과제안드로이드 앱 개발리액트 네이티브과제 앱 페이지 적용 - 1 , 네비게이터란? 앱에 여러 페이지를 만들었다면 그 페이지를 이동할 수 있는 기능을 의미한다. --> React Navigation이라는 도구 사용할 것 (Expo측에서 개발한) [React Navigation 설치 가이드] --> yarn을 통해 설치 --> 기본 설치 코드 (네비게이터 활용을 위한) yarn add @react-navigation/native expo install react-native-... 안드로이드 앱 개발리액트 네이티브리액트 네이티브 레이아웃 xml 파일에서 xmlns 코드의 의미는? ( xml에서의 import 기능 ) 아래와 같이 레이아웃을 나타내는 xml 파일이 있다고 할때, 이 부분은 무엇을 나타낼까? 이 본론부터 말하자면 이 부분은 xml에서의 import 기능이라고 보면 된다. 즉, 해당 위치에 있는 라이브러리를 각각 임의의 변수에 담아서 사용하겠다는 의미이다. 예를 들어, 우리가 위와 같이 TextView의 id 속성을 지정할 수 있는 것도, 뜯어보면 "android"라는 변수에 " " 위치에 있... 안드로이드 스튜디오kotlin안드로이드 앱 개발kotlin JSX 기본 문법 리액트 네이티브라는 개발도구 위에 Expo를 올려서 손쉽게 코딩하는 형태 --> 기반은 리액트 네이티브이므로 모든 태그는 리액트 네이티브(도구상자)로 부터 불러옴 JSX 문법 --> <> 형태로 된 태그문법로 이루어짐 [Expo로 앱 생성시 초기 화면] --> App() 함수는 View태그를 반환(반환된 View로 화면을 그려주는 것) -->화면에 반환된 View 태그의 내용이 나타남 -->... JSXJavaScript리액트 네이티브안드로이드 앱 개발JSX {}표현식, 조건문 예시 ) 코드의 일부분 let todayWeather = 10 + 17; let todayCondition = "흐림" return ( return 구문 안에서는 {슬래시 + 방식으로 주석 <Text>오늘의 날씨: {자바스크립트처럼 + 연산}</Text> 사용 <Text>나 <ScrollView> 등의 태그에 style을 입히기 위해서도 {} 사용 --> styles.container등 st... JSXJavaScript리액트 네이티브안드로이드 앱 개발JSX 리액트 네이티브 - Expo 여러 앱기능 - 앱에서 외부링크 열기 앱에서 외부링크를 열기 위한 준비 expo에서 제공하는 도구 설치 expo install expo-linking 설치한 도구에서 불러오기 --> expo-linking안의 도구를 모두 가져온는데 그 이름을 Linking이라고 명명짓겠다는 의미 도구를 이용하여 함수 만들기 Linking.openURL(" ) 만든 함수를 활용... JSX리액트 네이티브안드로이드 앱 개발JSX 앱 프로젝트 - 02 - 3 (로또 번호 추첨기) - NumberPicker, ContextCompat을 통해 drawable에 접근하기, lazy init, 리스너설정에 대한 방법론 --> Shape Drawable에 대한 자세한 설명은 02 - 1 글에 있음 와 같이 범위를 선택할 수 있다. ( 위 코드처럼 설정할 경우 1~45사이의 숫자를 선택할 수 있다. 앱 실행시에 visibility속성를 gone으로 하고 싶은 경우, 이렇게만 하면 안드로이드 스튜디오내에서도 gone으로 적용되기 때문에 해당 컴포넌트가 보이지 않는다. 안드로이드 스튜디오에서는 visible로 적... 안드로이드 앱 개발앱 프로젝트kotlin안드로이드 스튜디오kotlin 앱 프로젝트 - 03 - 1 (비밀 다이어리) - SharedPreference, Thread(UI Thread와 새로운 쓰래드) 그리고 Handler, Theme(테마)설정하기, AlertDialog, Custom Font 사용하는 법, 기본 컴포넌트(Button, TextView 등등) 색 변경하기 ,,,,,, 글 입력이 멈춘 후 0.5초가 지나면 저장되는 코드 SharedPreference라는 기능은 Preference파일을 사용하고, 다른 앱에서도 해당 파일을 사용할 수 있게 Share해주는 기능이다. 위의 설명처럼 SharedPreference는 Preference파일을 다른 앱에서도 사용(Share)할 수 있게 해주는 기능이기 때문에 password라는 Preference파일을 이 앱에서만 사용하기 위해서 Mode를 Private로 설정하였다... 안드로이드 앱 개발앱 프로젝트kotlin안드로이드 스튜디오kotlin 리액트 네이티브 & Expo + Node.js,NPM 란 리액트 --> 웹화면을 만드는 프론트 기술 리액트 네이티브 --> 리액트 + 네이티브 --> 리액트 기술을 응용하여 앱을 만드는 기술 But 리액트 네이티브만으로 개발하다보면 JavaScript뿐만 아니라 안드로이드 코드, ios 코드가 필요하게 됨 --> 이는 JavaScript만으로 개발하고자 하는 취지에 벗어난 것 Node.js --> 자바스크립트 개발환경 구축 NPM --> 자바스크립... JavaScript리액트 네이티브안드로이드 앱 개발JavaScript 앱으로 수익을 내는 방법 - 배너광고 ... 2. 전면 배너 전면 배너 예제 코드 전면 배너의 경우, 사용 설명서에 따르면 초기화가 필요하므로 useEffect에서 초기화 (AdMob 광고키 셋팅, 리스너 설정) 특히 리스너 중에 의 경우 광고가 끝나면서 본래 나타나야 될 파일로 이동하는 부분으므로 좀더 신경써서 봐야한다. 이후 --> goDetail 함수를 만들고 광고 시작 코드를 넣어 광고를 시작한다. (이외에는 위의 전체 코드 살펴볼 것)... 리액트 네이티브안드로이드 앱 개발리액트 네이티브 앱 프로젝트 - 10 - 1 (오늘의 명언) - Firebase Remote Config( 원격 구성 ), ViewPager2 무한 스와이프 할 수 있다. 애니메이션 같은 부분들을 좀 더 원할하게 보여줄 수 있음 사용자가 ViewPager2를 스와이프할 때 ViewHolder의 메소드를 실행시키는 클래스라고 볼 수 있다. 여기서 ViewHolder() 메소드의 파라미터로 ViewPager2를 구성할 레이아웃을 전달해야 한다. 이 때 bind() 메소드는 파라미터로 변경될 데이터를 받아야 한다. 따라서 일반적인 경우 ... 안드로이드 앱 개발kotlin안드로이드 스튜디오앱 프로젝트kotlin